package gimnasioSEF.interfaz.servlets;


import gimnasioSEF.mundo.logica.GimnasioSEF;

import java.io.IOException;
import java.io.PrintWriter;
import java.util.ArrayList;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;


public class ServletRF16Fin extends ServletTemplate
{

	private static final long serialVersionUID = 1L;

    /**
     * Devuelve el titulo de la pagina para el Header
     * @param request Pedido del cliente
     * @return Titulo de la pagina para el Header
     */
	public String darTituloPagina(HttpServletRequest request)
	{
		return "Gimnasio - RF16";
	}

    /**
     * Escribe el contendio de la pagina
     * @param request Pedido del cliente
     * @param response Respuesta
     * @throws IOException Excepcion de error al escribir la respuesta
     */
	public void escribirContenido(HttpServletRequest request,HttpServletResponse response) throws IOException 
	{
		 // Saca el printer de la respuestas
        PrintWriter respuesta = response.getWriter( );
        String nombreSede = request.getParameter("nombreSede");
        String ciudadSede = request.getParameter("ciudadSede");
        String categoriaSede = request.getParameter("categoriaSede");
        
       
        try
        {
            GimnasioSEF gimnasio = GimnasioSEF.darInstancia();
            String[] servicios = request.getParameterValues("servicios");
            if (servicios.length > 0)
            {
            	ArrayList<String> serviciosSede  = new ArrayList<String>();
            	for(int i=0;i<servicios.length;i++)
            	{
            		serviciosSede.add(servicios[i]);
            		respuesta.write("Servicio: "+serviciosSede.get(i)+" .<br>");
            	}
            	
            	double tInicial = System.nanoTime(); 
            	gimnasio.abrirSede(nombreSede, ciudadSede, categoriaSede,serviciosSede);
            	double tFinal=System.nanoTime(); 
            	double tTotal=Math.pow(10, -9)*(tFinal-tInicial);
            	
            	respuesta.write(" Se agrego la sede correctamente.<br>");
            	respuesta.write(" <br>Duracion Requerimiento: "+tTotal+" segundos. <br>");
            }
            
            if (servicios==null || servicios.length==0 )
            {
            	respuesta.write("No selecciono ningun servicio. No se puede agregar la sede");
            }
            	
        }
        catch( Exception e )
        {
            imprimirMensajeError( response,"ERROR", "Error",e );
        }
	}
	

}

